#ifndef CRYPTHELPER_H
#define CRYPTHELPER_H

#include<QByteArray>

class CryptHelper
{
public:
    CryptHelper();

    static constexpr int SM4_KEY_SIZE = 16;   // 密钥长度
    static constexpr int SM4_BLOCK_SIZE = 16; // 块大小

    static QByteArray sm3Hash(const QByteArray& data) ;
    static QByteArray sm4Encrypt(const QByteArray& plaintext, const QByteArray& key);
    static QByteArray sm4Decrypt(const QByteArray& ciphertext, const QByteArray& key);
};

#endif // CRYPTHELPER_H
